set(LLVM_LINK_COMPONENTS
  AllTargetsAsmParsers
  AllTargetsCodeGens
  AllTargetsDescs
  AllTargetsInfos
  Analysis
  BitReader
  BitWriter
  CodeGen
  Core
  IRReader
  MC
  MIRParser
  Support
  Target
  TransformUtils
  IPO
  )

add_llvm_tool(llvm-reduce
  DeltaManager.cpp
  ReducerWorkItem.cpp
  TestRunner.cpp
  deltas/Delta.cpp
  deltas/Utils.cpp
  deltas/ReduceAliases.cpp
  deltas/ReduceArguments.cpp
  deltas/ReduceAttributes.cpp
  deltas/ReduceBasicBlocks.cpp
  deltas/ReduceFunctionBodies.cpp
  deltas/ReduceFunctions.cpp
  deltas/ReduceGlobalObjects.cpp
  deltas/ReduceGlobalValues.cpp
  deltas/ReduceGlobalVarInitializers.cpp
  deltas/ReduceGlobalVars.cpp
  deltas/ReduceInstructions.cpp
  deltas/ReduceMetadata.cpp
  deltas/ReduceModuleData.cpp
  deltas/ReduceOperandBundles.cpp
  deltas/ReduceSpecialGlobals.cpp
  deltas/ReduceOperands.cpp
  deltas/ReduceOperandsSkip.cpp
  deltas/ReduceOperandsToArgs.cpp
  deltas/ReduceInstructionsMIR.cpp
  deltas/ReduceInstructionFlagsMIR.cpp
  deltas/ReduceIRReferences.cpp
  deltas/ReduceVirtualRegisters.cpp
  deltas/ReduceRegisterMasks.cpp
  deltas/ReduceRegisterDefs.cpp
  deltas/ReduceRegisterUses.cpp
  deltas/SimplifyInstructions.cpp
  llvm-reduce.cpp

  DEPENDS
  intrinsics_gen
  )
